<?php
//$teste = setlocale(LC_ALL, "ptb_bra");

include_once 'abstract_dao.php';
include_once 'model_usuario.php';

class dao_localidade extends abstract_dao{


    /**
     * Consulta todas as Unidades Federais
     * @return Array UF_ID
     */
    public function selectAllUF(){
        $sql= "SELECT EST_ID, EST_NOME, EST_SIGLA FROM `estado`";
        
        $stmt = $this->pdo->prepare($sql);
        $stmt->execute();
        if ($stmt->rowCount() > 0){
            $retorno = Array();
            while($row = $stmt->fetch(PDO::FETCH_ASSOC)){
                $retorno[] = $row;
            }
        }else{
            throw new DAOException("Erro ao recuperar UFs");
        }
        return $retorno;
    }
    
    /**
     * Consulta todas as cidades de uma Unidade da Federacao
     * @param string $EST_SIGLA
     * @return Array CID_ID CID_NOME
     */
    public function selectAllCidades($EST_SIGLA){
        $sql= "SELECT * FROM `vw_cidade` WHERE EST_SIGLA = '$EST_SIGLA'";
        
        $stmt = $this->pdo->prepare($sql);
        $stmt->execute();
        
        if ($stmt->rowCount() > 0){
            $retorno = Array();
            while($row = $stmt->fetch(PDO::FETCH_ASSOC)){
                $retorno[] = $row;
            }
        }else{
            throw new DAOException("Erro ao recuperar Cidades");
        }
        return $retorno;
    }
    
    /**
     * Consulta uma determinada cidade
     * @param string $CID_ID
     * @return Array CID_ID CID_NOME
     */
    public function selectCidade($CID_ID){
        $sql= "SELECT * FROM `vw_cidade` WHERE CID_ID LIKE '$CID_ID'";
        
        $stmt = $this->pdo->prepare($sql);
        $stmt->execute();
        
        
        $retorno = NULL;
        if ($stmt->rowCount() > 0){
            while($row = $stmt->fetch(PDO::FETCH_ASSOC)){
                $retorno = $row;
            }
        }else{
            throw new DAOException("Erro ao recuperar Cidades");
        }
        return $retorno;
    }
    
    public function insertLatLng($CID_ID, $LAT, $LNG){
        $sql= "UPDATE `cidade` SET CID_LAT = $LAT, CID_LNG = $LNG WHERE CID_ID LIKE '$CID_ID'";
        
        $row_affected = $this->pdo->exec($sql);
        
        if($row_affected == 1){
            return TRUE;
        }
        return FALSE;
    }

}

?>
